home *** CD-ROM | disk | FTP | other *** search
/ Tech Arsenal 1 / Tech Arsenal (Arsenal Computer).ISO / tek-13 / xvisrc.zip / MAKEFILE.386 < prev    next >
Text File  |  1992-07-28  |  4KB  |  148 lines

  1. # Copyright (c) 1990,1991,1992 Chris and John Downey
  2. #***
  3. #
  4. # @(#)makefile.386    2.2 (Chris & John Downey) 7/31/92
  5. #
  6. # program name:
  7. #    xvi
  8. # function:
  9. #    PD version of UNIX "vi" editor, with extensions.
  10. # module name:
  11. #    makefile.386
  12. # module function:
  13. #    Makefile for MS-DOS 386 protected mode version using Zortech
  14. #    C 3.00 & PharLap DOS extender.
  15. # history:
  16. #    STEVIE - ST Editor for VI Enthusiasts, Version 3.10
  17. #    Originally by Tim Thompson (twitch!tjt)
  18. #    Extensive modifications by Tony Andrews (onecom!wldrdg!tony)
  19. #    Heavily modified by Chris & John Downey
  20. #***
  21.  
  22. #
  23. # Name of this file.
  24. #
  25. THISFILE=    makefile.386
  26.  
  27. MEMMODEL=    p
  28. CC=        ztc
  29. LIBDIR=        $(LIB)
  30. PHARLAP=    d:\osu\pharlap
  31. OPTFLAGS=    -o+dc -o+li -o+loop
  32. DEBUGFLAGS=    -g
  33. CDEFS=        -DMSDOS -D__STDC__=1
  34. CFLAGS=        -m$(MEMMODEL) -bx $(CDEFS) $(OPTFLAGS)
  35. LD=        $(PHARLAP)\386linkp
  36. TARGET=        xvi
  37.  
  38. INC=        ascii.h param.h ptrfunc.h regexp.h regmagic.h xvi.h \
  39.         virtscr.h msdos.h pc386.h
  40.  
  41. SRC=        defscr.c \
  42.         alloc.c ascii.c buffers.c cmdline.c cursor.c \
  43.         edit.c ex_cmds1.c ex_cmds2.c events.c flexbuf.c \
  44.         fileio.c find.c map.c mark.c misccmds.c \
  45.         mouse.c movement.c normal.c param.c pipe.c \
  46.         preserve.c ptrfunc.c screen.c regexp.c \
  47.         search.c startup.c status.c \
  48.         tags.c undo.c version.c windows.c yankput.c \
  49.         msdos_c.c ibmpc_c.c pc386.c
  50.  
  51. OBJ=        defscr.obj \
  52.         alloc.obj ascii.obj buffers.obj cmdline.obj cursor.obj \
  53.         edit.obj ex_cmds1.obj ex_cmds2.obj events.obj flexbuf.obj \
  54.         fileio.obj find.obj map.obj mark.obj misccmds.obj \
  55.         mouse.obj movement.obj normal.obj param.obj pipe.obj \
  56.         preserve.obj ptrfunc.obj screen.obj regexp.obj \
  57.         search.obj startup.obj status.obj \
  58.         tags.obj undo.obj version.obj windows.obj yankput.obj \
  59.         msdos_c.obj ibmpc_c.obj pc386.obj
  60.  
  61. LINKFILE=    $(TARGET).lnk
  62.  
  63. $(TARGET).exe:    $(TARGET).exp
  64.         $(PHARLAP)\bind386 $(PHARLAP)\run386b $(TARGET)
  65.  
  66. $(TARGET).exp:    $(OBJ) $(LINKFILE) version.c
  67.         $(CC) $(CFLAGS) -c version.c
  68.         $(LD) @$(LINKFILE)
  69.  
  70. $(LINKFILE):    $(THISFILE) echonl.com
  71.         +echo $(LIBDIR)\realmode > $@
  72.         # +echo $(LIBDIR)\int >> $@
  73.         +echo defscr >> $@
  74.         +echo alloc >> $@
  75.         +echo ascii >> $@
  76.         +echo buffers >> $@
  77.         +echo cmdline >> $@
  78.         +echo cursor >> $@
  79.         +echo edit >> $@
  80.         +echo ex_cmds1 >> $@
  81.         +echo ex_cmds2 >> $@
  82.         +echo events >> $@
  83.         +echo flexbuf >> $@
  84.         +echo fileio >> $@
  85.         +echo find >> $@
  86.         +echo map >> $@
  87.         +echo mark >> $@
  88.         +echo misccmds >> $@
  89.         +echo mouse >> $@
  90.         +echo movement >> $@
  91.         +echo normal >> $@
  92.         +echo param >> $@
  93.         +echo pipe >> $@
  94.         +echo preserve >> $@
  95.         +echo ptrfunc >> $@
  96.         +echo regexp >> $@
  97.         +echo screen >> $@
  98.         +echo search >> $@
  99.         +echo startup >> $@
  100.         +echo status >> $@
  101.         +echo tags >> $@
  102.         +echo undo >> $@
  103.         +echo version >> $@
  104.         +echo windows >> $@
  105.         +echo yankput >> $@
  106.         +echo msdos_c >> $@
  107.         +echo ibmpc_c >> $@
  108.         +echo pc386 >> $@
  109.         +echonl >> $@
  110.         +echo -lib $(LIBDIR)\zps.lib -tc -MAXREAL 4096 >> $@
  111.         +echo -exe $(TARGET).exp >> $@
  112.  
  113. .c.obj:
  114.         $(CC) $(CFLAGS) -o$@ -c $<
  115.  
  116. .asm.com:
  117.         @masm $* ;
  118.         @link $* ;
  119.         @del $*.obj
  120.         @exe2bin $*.exe $*.com
  121.         @del $*.exe
  122.  
  123. echonl.com:    echonl.asm
  124.  
  125. #
  126. # Generate program to output a single newline. This is needed to
  127. # generate the link file.
  128. #
  129. echonl.asm:    $(THISFILE)
  130.         +echo cseg segment > $@
  131.         +echo assume cs:cseg >> $@
  132.         +echo org 100h >> $@
  133.         +echo start: >> $@
  134.         +echo mov dx, offset crnl >> $@
  135.         +echo mov ah, 9 >> $@
  136.         +echo int 21h >> $@
  137.         +echo mov ax, 4c00h >> $@
  138.         +echo int 21h >> $@
  139.         +echo crnl db 0dh, 0ah, 024h >> $@
  140.         +echo cseg ends >> $@
  141.         +echo end start >> $@
  142.  
  143. clean:
  144.         del *.obj
  145.         del $(LINKFILE)
  146.         del *.map
  147.         del echonl.com
  148.